package com.smart.community.feign.community;

import com.smart.community.commons.result.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

/**
 * 社区服务Feign接口
 * 
 * @author Wu.Liang
 */
@FeignClient(
    name = "smart-community-community",
    fallback = CommunityFeignClientFallback.class
)
public interface CommunityFeignClient {
    
    /**
     * 获取社区信息
     * 
     * @param communityId 社区ID
     * @return 社区信息
     */
    @GetMapping("/community/info/{communityId}")
    Result<?> getCommunityInfo(@PathVariable("communityId") Long communityId);
    
    /**
     * 获取社区活动
     * 
     * @param communityId 社区ID
     * @return 社区活动
     */
    @GetMapping("/community/activity/{communityId}")
    Result<?> getCommunityActivities(@PathVariable("communityId") Long communityId);
    
    /**
     * 获取社区公告
     * 
     * @param communityId 社区ID
     * @return 社区公告
     */
    @GetMapping("/community/notice/{communityId}")
    Result<?> getCommunityNotices(@PathVariable("communityId") Long communityId);
} 
